//package com.gzz;
//
//import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
//import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
//import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
//
//import org.assertj.core.util.Arrays;
//import org.junit.Test;
//import org.junit.runner.RunWith;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
//import org.springframework.boot.test.context.SpringBootTest;
//import org.springframework.http.MediaType;
//import org.springframework.test.context.junit4.SpringRunner;
//import org.springframework.test.web.servlet.MockMvc;
//
////import org.springframework.test.web.servlet.MvcResult;
//import com.fasterxml.jackson.databind.ObjectMapper;
//import com.gzz.manage.base.customer.Customer;
//import com.gzz.manage.base.customer.CustomerCond;
//
//import lombok.extern.slf4j.Slf4j;
///**
// * @类说明 【客户表】测试工具，将本类移到maven测试目录中或测试完成之后删除
// * @author 高振中
// * @date 2019-01-12 22:40:08
// **/
//@Slf4j
//@SpringBootTest
//@AutoConfigureMockMvc
//@RunWith(SpringRunner.class)
//public class MockMvcTestCustomer {
//	@Autowired
//	private MockMvc mvc;
//	@Autowired
//	private ObjectMapper mapper;
//	/**
//	 * @方法说明 测试 新增【客户表】,根据数据类型修改每个字段的值
//	 */
//	//@Test
//	public void save() throws Exception {
//		Customer customer = Customer.builder()
//		//.id("gaozz") // 设置【主键】的值
//		//.username("gaozz") // 设置【用户名】的值
//		//.password("gaozz") // 设置【密码】的值
//		//.wechat("gaozz") // 设置【微信号】的值
//		//.address("gaozz") // 设置【地址】的值
//		//.avatar("gaozz") // 设置【头像】的值
//		//.remark("gaozz") // 设置【备注】的值
//		//.tel("gaozz") // 设置【电话号】的值
//		//.levelId("gaozz") // 设置【会员等级】的值
//		//.createTime("gaozz") // 设置【注册时间】的值
//		//.updateTime("gaozz") // 设置【修改时间】的值
//		.build();
//		log.info(doRequest("/customer/save", customer));
//	}
//	/**
//	 * @方法说明 测试 查询【客户表】列表,条件可以为空,可直接运行
//	 */
////	@Test
//	public void queryList() throws Exception {
//		CustomerCond cond = CustomerCond.builder()//拼查询条件
//				//.id("gaozz")  // 【主键】值
//				//.username("gaozz")  // 【用户名】值
//				//.password("gaozz")  // 【密码】值
//				//.wechat("gaozz")  // 【微信号】值
//				//.address("gaozz")  // 【地址】值
//				//.avatar("gaozz")  // 【头像】值
//				//.remark("gaozz")  // 【备注】值
//				//.tel("gaozz")  // 【电话号】值
//				//.levelId("gaozz")  // 【会员等级】值
//				//.createTime("gaozz")  // 【注册时间】值
//				//.updateTime("gaozz")  // 【修改时间】值
//		.build();
//		log.info(doRequest("/customer/list", cond));
//	}
//	/**
//	 * @方法说明 测试 查询【客户表】分页列表,条件可以为空,可直接运行
//	 */
//	@Test
//	public void queryPage() throws Exception {
//		CustomerCond cond = CustomerCond.builder()//拼查询条件
//				//.id("gaozz")  // 【主键】值
//				//.username("gaozz")  // 【用户名】值
//				//.password("gaozz")  // 【密码】值
//				//.wechat("gaozz")  // 【微信号】值
//				//.address("gaozz")  // 【地址】值
//				//.avatar("gaozz")  // 【头像】值
//				//.remark("gaozz")  // 【备注】值
//				//.tel("gaozz")  // 【电话号】值
//				//.levelId("gaozz")  // 【会员等级】值
//				//.createTime("gaozz")  // 【注册时间】值
//				//.updateTime("gaozz")  // 【修改时间】值
//		.ids(Arrays.asList(new Object[]{1,2,3,4}))
//		.build();
//		cond.setPage(1); //当前页
//		cond.setSize(10); //页大小
//		log.info(doRequest("/customer/page", cond));
//	}
//	
//	private <T> String doRequest(String url, T t) throws Exception {// restController专用测试方法
//		log.info(mapper.writeValueAsString(t));
//		return mvc.perform(post(url).contentType(MediaType.APPLICATION_JSON).content(mapper.writeValueAsString(t))).andExpect(status().isOk())
//				.andExpect(content().contentType(MediaType.APPLICATION_JSON)).andReturn().getResponse().getContentAsString();
//	}
//}